package com.gitee.qdbp.general.marketing.api.activity.model;

import com.gitee.qdbp.base.annotation.DataIsolation;
import com.gitee.qdbp.base.annotation.OperateTraces;

/**
 * 奖品主更新类
 *
 * @author zhh
 * @version 181114
 */
@OperateTraces(target = "where")
@DataIsolation(enable = false)
public class AwardCoreUpdate extends AwardCoreBean {

    /** 版本序列号 **/
    private static final long serialVersionUID = 1L;

    /** 奖品名称是否更新为空值 **/
    private Boolean awardNameToNull;

    /** 奖品描述是否更新为空值 **/
    private Boolean awardIntroToNull;

    /** 市场价格是否更新为空值 **/
    private Boolean marketPriceToNull;

    /** 是否支持在线派奖是否更新为空值 **/
    private Boolean supportOnlineDeliveryToNull;

    /** 选项是否更新为空值 **/
    private Boolean optionsToNull;

    /** 更新操作的条件 **/
    private AwardCoreWhere where;

    /** 判断奖品名称是否更新为空值 **/
    public Boolean isAwardNameToNull() {
        return awardNameToNull;
    }

    /**
     * 设置奖品名称是否更新为空值
     *
     * @param awardNameToNull 奖品名称是否更新为空值
     * @deprecated 该字段为非空字段
     */
    @Deprecated
    public void setAwardNameToNull(Boolean awardNameToNull) {
        this.awardNameToNull = awardNameToNull;
    }

    /** 判断奖品描述是否更新为空值 **/
    public Boolean isAwardIntroToNull() {
        return awardIntroToNull;
    }

    /** 设置奖品描述是否更新为空值 **/
    public void setAwardIntroToNull(Boolean awardIntroToNull) {
        this.awardIntroToNull = awardIntroToNull;
    }

    /** 判断市场价格是否更新为空值 **/
    public Boolean isMarketPriceToNull() {
        return marketPriceToNull;
    }

    /** 设置市场价格是否更新为空值 **/
    public void setMarketPriceToNull(Boolean marketPriceToNull) {
        this.marketPriceToNull = marketPriceToNull;
    }

    /** 判断是否支持在线派奖是否更新为空值 **/
    public Boolean isSupportOnlineDeliveryToNull() {
        return supportOnlineDeliveryToNull;
    }

    /**
     * 设置是否支持在线派奖是否更新为空值
     *
     * @param supportOnlineDeliveryToNull 是否支持在线派奖是否更新为空值
     * @deprecated 该字段为非空字段
     */
    @Deprecated
    public void setSupportOnlineDeliveryToNull(Boolean supportOnlineDeliveryToNull) {
        this.supportOnlineDeliveryToNull = supportOnlineDeliveryToNull;
    }

    /** 判断选项是否更新为空值 **/
    public Boolean isOptionsToNull() {
        return optionsToNull;
    }

    /** 设置选项是否更新为空值 **/
    public void setOptionsToNull(Boolean optionsToNull) {
        this.optionsToNull = optionsToNull;
    }

    /** 获取更新操作的条件 **/
    public AwardCoreWhere getWhere() {
        return where;
    }

    /** 获取更新操作的条件, force=是否强制返回非空条件 **/
    public AwardCoreWhere getWhere(boolean force) {
        if (where == null && force) {
            where = new AwardCoreWhere();
        }
        return where;
    }

    /** 设置更新操作的条件 **/
    public void setWhere(AwardCoreWhere where) {
        this.where = where;
    }
}